package net.goutalk.glcs.module.workflow.dto;

import net.goutalk.glcs.module.workflow.model.MemberConfig;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.List;
import java.util.Map;

/**
 * @Author: tanyujie
 * @Date: 2022/9/9 10:19
 */
@Data
public class ApproveDto {

    @ApiModelProperty("流程任务id")
    @NotBlank(message = "流程任务id不能为空")
    private String taskId;

    @ApiModelProperty("审批内容")
    private String approvedContent;

    @ApiModelProperty("审批类型 0 同意 1 拒绝 2 驳回 3 结束 4 其他（用户自定义按钮） ")
    @NotNull(message = "审批类型不能为空")
    private Integer approvedType;

    @ApiModelProperty("审批结果 buttonConfig 的 buttonCode ")
    @NotNull(message = "审批结果按钮编码不能为空")
    private String approvedResult;

    @ApiModelProperty("表单数据")
    @NotNull(message = "表单数据不能为空")
    private Map<String, Map<String, Object>> formData;

    @ApiModelProperty("驳回节点activityId (传入节点activityId)")
    private String rejectNodeActivityId;

    @ApiModelProperty("传阅人信息")
    private List<MemberConfig> circulateConfigs;

    @ApiModelProperty("签章Id")
    private Long stampId;

    @ApiModelProperty("签章如果有密码 填写的密码")
    private String stampPassword;

    @ApiModelProperty("所有上传文件的文件夹id")
    private List<Long> fileFolderIds;


}
